# Copyright 2016 Peter Dimov
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)

version: 1.0.{build}-{branch}

shallow_clone: true

branches:
  only:
    - master
    - develop

platform:
  - x64

environment:
  matrix:
    - ARGS: --toolset=msvc-9.0  address-model=32
    - ARGS: --toolset=msvc-10.0 address-model=32
    - ARGS: --toolset=msvc-11.0 address-model=32
    - ARGS: --toolset=msvc-12.0 address-model=32
    - ARGS: --toolset=msvc-14.0 address-model=32
    - ARGS: --toolset=msvc-12.0 address-model=64
    - ARGS: --toolset=msvc-14.0 address-model=64
    - ARGS: --toolset=msvc-14.0 address-model=64 cxxflags=-std:c++latest
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      ARGS: --toolset=msvc-14.1 address-model=64
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      ARGS: --toolset=msvc-14.1 address-model=32
    - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
      ARGS: --toolset=msvc-14.1 address-model=64 cxxflags=-std:c++latest
    - ARGS: --toolset=gcc address-model=64
      PATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH%
    - ARGS: --toolset=gcc address-model=64 cxxflags=-std=gnu++1z
      PATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH%
    - ARGS: --toolset=gcc address-model=32
      PATH: C:\mingw-w64\i686-5.3.0-posix-dwarf-rt_v4-rev0\mingw32\bin;%PATH%
    - ARGS: --toolset=gcc address-model=32 linkflags=-Wl,-allow-multiple-definition
      PATH: C:\MinGW\bin;%PATH%


install:
  - cd ..
  - git clone -b %APPVEYOR_REPO_BRANCH% --depth 1 https://github.com/boostorg/boost.git boost-root
  - cd boost-root
  - git submodule update --init tools/build
  - git submodule update --init libs/config
  - git submodule update --init tools/boostdep
  - xcopy /s /e /q %APPVEYOR_BUILD_FOLDER% libs\typeof\
  - python tools/boostdep/depinst/depinst.py typeof
  - bootstrap
  - b2 headers

build: off

test_script:
  - cd libs\config\test
  - ..\..\..\b2 config_info_travis_install %ARGS%
  - config_info_travis
  - cd ..\..\typeof\test
  - ..\..\..\b2 -j3 %ARGS% define=CI_SUPPRESS_KNOWN_ISSUES
